package com.bwda.dsrs.systemservice.constants;

/**
 * @author yangjun
 * @date 2019/4/9
 */
public interface BusinessConstants {


    /**
     * 浙江移动同步开关typecode
     */
    public static String TRUE_STRING = "true";
    public static String ZJYDSYNC = "sync_file";
    public static String ONE_STRING = "1";
    public static String FAN_XIE_TWO = "\\";
    public static String FAN_XIE_FOUR = "\\\\";
    public static int TWO_INT = 2;
    public static String EXE = "exe";
    public static String DSRS = "dsrs";
    public static String DSRSC = "dsrsc";
    public static String DSRST = "dsrst";
    public static String DSRSD = "dsrsd";
    public static String DSRSP = "dsrsp";
    public static String DSRSX = "dsrsx";
    public static String PDF = "pdf";

    /**
     * 可扫描的文本文件类型
     */
    String TXT_SCAN_TYPE = "txt,log,sql";

    /**
     * 4A同步文件根级文件夹
     */
    public static String FDIR = "4A";


    /**
     * 发布包说明文件
     */
    public static final String PUBLISH_XML = "publish.xml";

    /**
     * 水印的typecode
     */
    String SYDTYPECODE = "out_water_control";
    /**
     * webservice 处理文件开头
     */
    String WSDL_PROCESS_FILE_ = "wsdl_process_file_";

    /**
     * 最大的上传数量
     */
    Integer MAX_UPLOADFILES = 5;

    /**
     * 外接文件配置
     */
    String OUT_FILE_MODE = "out_file_mode";
    /**
     * 文件下载临时路径
     */
    String DOWNLOAD_TEMPPATH = "downloadtemppath";

    /**
     * 业务处理
     */
    String SERVER_TYPE = "serverType";
    /**
     * 文件处理成功
     */
    String HANDLE_SUCCESS = "ok";
    /**
     * 文件处理失败
     */
    String HANDLE_FAIL = "fail";
    /**
     * 文件等级
     */
    String FILE_LEVEL = "fileLevel";

    /**
     * 敏感词校验通过
     */
    String CHECK_WORD_PASS = "pass";

    /**
     * 敏感词校验不通过
     */
    String CHECK_WORD_NOPASS = "nopass";

    /**
     * 用户类型
     */
    String USER_TYPE = "userType";

    /**
     * 流程策略类型
     */
    String PROCESS_STRATEGY_TYPE = "processStrategyType";

    /**
     * 操作类型
     */
    String OPERATE_TYPE = "operateType";
    String FILE_HOME_CONFIG = "file_home_config";

    /**
     * 禁止操作类型
     */
    String NO_OPERATE_TYPE = "noOperateType";
    String FILE_SCAN_TYPE = "file_scan_type_value";

    /**
     * 上传不限制值
     */
    String UPLOAD_NO_LIMIT_STR = "_";


    /**
     * 压缩文件后缀
     */
    String ZIP_INI = "_bwdazipini";
    /**
     * 1024
     */
    Integer UNIT = 1024;

    /**
     * 水印预览默认高度/宽度
     */
    Integer WATER_PREVIEW_DEFAULT_WIDTH_HEIGHT = 200;

    /**
     * 预览默认透明度，1：透明底 其他黑底
     */
    Integer WATER_PREVIEW_DEFAULT_TRANSPARENCY = 1;
    Integer INTEGER_ONE = 1;

    /**
     * 数字常量
     */
    interface NumberConstant {
        /**
         * 数值1024000
         */
        int LARGENUMBER = 1024000;
        /**
         * 数值-1
         */
        int MINUSONE = -1;
        /**
         * 数值0
         */
        int ZERO = 0;
        /**
         * 数值1
         */
        int ONE = 1;
        /**
         * 数值2
         */
        int TWO = 2;
        /**
         * 数值3
         */
        int THREE = 3;
        /**
         * 数值4
         */
        int FOUR = 4;
        /**
         * 数值5
         */
        int FIVE = 5;
        /**
         * 数值10
         */
        int TEN = 10;
        /**
         * 失败返回code
         */
        int FAILRESCODE = 201;
        /**
         * 成功返回code
         */
        int OKRESCODE = 200;

        /**
         * 数值0L
         */
        Long ZERO_LONG = 0L;

        /**
         * 数值1L
         */
        Long ONE_LONG = 1L;

        /**
         * 定值粒度
         */
        int SIZETHRESHOLD = 16;

        /**
         * byte长度
         */
        int BYTELENGTH = 8192;
    }

    /**
     * 数字常量
     */
    interface FileType {
        /**
         * 数值1024000
         */
        String DOC = "doc";
        String CSV = "csv";
        String XLS = "xls";
        String PPT = "ppt";
        String XLSX = "xlsx";
        String PDF = "pdf";
        String PNG = "png";
        String JPG = "jpg";
        String JPEG = "jpeg";
        String BMP = "bmp";

    }

    /**
     * 字符串常量
     */
    interface StringConstant {
        /**
         * 失败返回字符串
         */
        String FAIL = "fail";
        /**
         * 成功返回字符串
         */
        String OK = "ok";
        /**
         * min
         */
        String MIN = "min";
        /**
         * max
         */
        String MAX = "max";
        /**
         * and
         */
        String AND = "and";
        /**
         * or
         */
        String OR = "or";

        /**
         * 数值99
         */
        String NINENINE = "99";
        /**
         * 数值0
         */
        String ZERO = "0";

    }


    /**
     * 认证头标识
     */
    String NOT_SUPPORTED = "不支持该类型文件";

    /**
     * 文件加密
     * 0:不加密
     */
    String IS_ENCRYPTION = "0";

    /**
     * 认证类型
     */
    String TOKEN_PREFIX = "bearer ";
    /**
     * 认证参数
     */
    String TOKEN_STRING = "access_token";
    /**
     * 风险模式code
     */
    String RISK_MODEL_CODE = "RISKMODEL";
    /**
     * 风险等级code
     */
    String RISK_LEVEL_CODE = "RISK_LEVEL_COUNT";
    /**
     * 正常的字符串长度
     */
    Integer MAX_STRING_LENGTH = 512;

    /**
     * MB 2 KB
     */
    Integer MB2KB_SIZE = 1024;

    /**
     * GB 2 KB
     */
    Integer GB2KB_SIZE = 1048576;

    /**
     * 空字符串
     */
    String BLANK_STR = "";

    /**
     * 一个空格
     */
    String BLANK_ONE_STR = " ";

    /**
     * base64图片链接头
     */
    String BASE64_IMAGE_LINK_HEADER = "data:image/png;base64,";


    /**
     * 无TOKEN
     */
    String TOKEN_ERROR = "202";

    /**
     * 策略
     */
    interface Strategy {
        /**
         * id字段
         */
        String COLUMN_ID = "id";
        /**
         * id字段
         */
        String COLUMN_CREATE_TIME = "create_time";

    }

    /**
     * 删除标志
     */
    interface DelFlag {
        /**
         * 未删除 0
         */
        int NOT_DELETED = 0;
        /**
         * 已删除 1
         */
        int DELETED = 1;
        /**
         * 回收站 2
         */
        int RECYCLE = 2;

    }

    /**
     * 文件加密标志
     */
    interface EncFlag {
        /**
         * 未加密 0
         */
        int NOT_ENCED = 0;
        /**
         * 已加密 1
         */
        int ENCED = 1;

    }





    /**
     * 文件是否下载状态
     */
    interface FileDownloadState {
        /**
         * 未下载 0
         */
        int NOT_DOWNLIAD = 0;
        /**
         * 1 已下载
         */
        int DOWNLOADED = 1;
    }

    /**
     * 敏感等级的最大值和最小值
     */
    interface SensitiveLevelValue {
        /**
         * 最大等级 4
         */
        int MAX_LEVEL = 4;
        /**
         * 最小等级 0
         */
        int MIN_LEVEL = 0;
    }

    /**
     * 敏感字段匹配类型
     */
    interface SensitiveWordsMatchType {
        /**
         * 关键字 0
         */
        int KEYWORD = 0;
        /**
         * 正则 1
         */
        int REGULAR = 1;
    }

    /**
     * 敏感等级状态
     */
    interface SensitiveLevelState {
        /**
         * 正常 0
         */
        int VALID = 0;
        /**
         * 停用 1
         */
        int INVALID = 1;
    }

    /**
     * 文件文件夹类型
     */
    interface FileDirType {
        /**
         * 文件 0
         */
        int FILE = 0;
        /**
         * 文件夹 1
         */
        int DIR = 1;
        /**
         * 默认分组
         */
        String GROUPSTR = "1";
        /**
         * 加密长度
         */
        int PWDLENGTH = 16;
        /**
         * 自动填充加密密码
         */
        String PWDSTR = "a";
    }

    /**
     * 文件申请审核类型
     */
    interface FileApplyAuditType {
        /**
         * 内部审核 0
         */
        int INNER_AUDIT = 0;
        /**
         * 外部审核 1
         */
        int OUT_AUDIT = 1;

    }

    interface FileApplyAuditSetting {
        /**
         * 黑名单禁止操作
         */
        int PROHIBIT = -2;
        /**
         * 禁止操作 0
         */
        int REJECT = -1;
        /**
         * 无需审核 0
         */
        int NONE = 0;
        /**
         * 审批
         * ADUIT 1
         */
        int AUDIT = 1;
        int JINKU = 2;

    }

    /***
     * 本地文件处理路径
     */
    interface LocalPath {
        /**
         * 加密后的文件前缀
         */
        String ENC_PREFIX = "bwda@enc_";

        /**
         * 上传文件时，本地临时路径
         */
        String LOCAL_UPLOAD_FILE_TEMP = "upload_file_temp";
        /**
         * 拷贝文件时，换FTP时，需要先下载到本地，临时路径。此功能不实用，没怎么测，目前都是同一个FTP
         */
        String LOCAL_COPY_TEMP = "copy_temp";

        /**
         * 文件引擎处理文件的临时路径
         */
        String FILE_DEAL_TEMP = "file_deal_temp";
        /**
         * 重新扫描文件，临时路径
         */
        String SACAN_TEMP = "scan_temp";

        String FILE_DEAL_TOOL_TEMP = "file_deal_tool_temp";
        String DOWNLOAD_TEMP = "download_temp";
        /**
         * 下载列表
         */
        String DOWNLOAD_LIST = "downloadlist";

        String FTP_OUT_TEMP = "out_temp";

    }

    interface FtpPath {


        String TOOLCENTER_DOWNLOAD = "toolcenter_download";
        /**
         * 外发待处理文件，先上传到FTP然后进行处理
         */
        String OUT_TO_DEAL = "outToDeal";
        String OUT_DOWNLOAD = "outDownload";
        /**
         * 终端版本
         */
        String TERMIANL = "termianls";

    }


    /**
     * 文件申请审核状态
     */
    interface FileApplyAuditState {
        /**
         * 申请中 0
         */
        int APPLYING = 0;
        /**
         * 通过 1
         */
        int APPROVED = 1;
        /**
         * 拒绝 2
         */
        int REJECTED = 2;

    }

    /**
     * 文件申请审核状态
     */
    interface UserType {
        /**
         * 用户 0
         */
        int USER = 0;
        /**
         * 自定义组 1
         */
        int GROUP = 1;
        /**
         * 组织 2
         */
        int ORG = 2;
        /**
         * 所有人
         */
        int ALL = 3;

    }

    /**
     * 策略黑名单的用户类型,组织自定义组颠倒了，这个是特殊的，其他地方以上面的为准
     */
    interface StrategyUserType {
        /**
         * 用户 0
         */
        int USER = 0;
        /**
         * 自定义组 2
         */
        int GROUP = 2;
        /**
         * 组织 1
         */
        int ORG = 1;
        /**
         * 所有人
         */
        int ALL = 3;

    }

    /**
     * 是否共享
     */
    interface ShareFlag {
        /**
         * 0不共享
         */
        int NOT_SHARE = 0;
        /**
         * 1共享
         */
        int SHARE = 1;


    }

    /**
     * 0不常用1常用
     */
    interface MostUseFlag {
        /**
         * 0不常用
         */
        int NOT_MOST_USE = 0;
        /**
         * 1常用
         */
        int MOST_USE = 1;


    }


    /**
     * 0内置 1自定义
     */
    interface BuiltInDataFlag {
        /**
         * 0内置
         */
        int BUILTIN_DATA = 0;
        /**
         * 1自定义
         */
        int NOT_BUILTIN_DATA = 1;
    }

    //SceneStrategyVo

    /**
     * 操作标识
     * 0不允许，1允许
     */
    interface OperateFlag {
        /**
         * 1允许操作
         */
        int OPERATE = 1;
        /**
         * 0禁止操作
         */
        int NO_OPERATE = 0;
    }

    /**
     * 外发权限
     */
    interface OutGrants {
        /**
         * 1 编辑
         */
        String EDIT = "1";
        /**
         * 2 复制
         */
        String COPY = "2";
        /**
         * 3 另存
         */
        String SAVE_AS = "3";
        /**
         * 4 防截屏
         */
        String CAPT = "4";
    }

    /**
     * 流程策略类型
     */
    interface ProcessStrategyType {
        /**
         * 0无
         */
        int NONE = 0;
        /**
         * 1审批
         */
        int APPROVAL = 1;
        /**
         * 2金库
         */
        int TREASURY = 2;
    }

    /**
     * 预下载类型
     */
    interface PreDownloadType {
        /**
         * 0 个人文件下载
         */
        int MY_FILES = 0;
        /**
         * 1 接受文件下载
         */
        int RECEIVE_FILES = 1;
        /**
         * 2 申请工单文件下载
         */
        int APPLY_FILES = 2;
    }

    /**
     * 申请类型
     */
    interface ApplyType {
        /**
         * 0 个人文件下载申请
         */
        int PRIVATE_FILE = 0;
        /**
         * 共享文件下载申请
         */
        int SHARE_FILE = 1;
        /**
         * 文件流转申请
         */
        int FLOW = 2;
        /**
         * 文件外发申请
         */
        int OUT = 3;
        /**
         * 编辑申请
         */
        int EDIT = 4;
        /**
         * 自定义组
         */
        int GROUP = 5;

    }

    /**
     * 个人文件来源
     */
    interface FileSource {
        /**
         * 个人文件 0
         */
        int PRIVATE_FILE = 0;

        String PRIVATE_FILENANME = "个人文件";
        /**
         * 共享文件 2
         */
        int SHARE_FILES = 1;
        /**
         * 流转，接受文件 1
         */
        int FLOW = 2;

        String FLOWNAME = "流转文件";
        /**
         * 外发文件 3
         */
        int OUT = 3;

        int COPY = 4;

        /**
         * 外接文件{包括自动同步 和外接文件移动}
         */
        int SYNC = 5;

        String SYNCNAME = "外接文件";


        int GROUP_FILES = 6;

        String SGROUP_FILES_NAME = "自定义组文件";

    }

//    /**
//     * 下载列表文件来源
//     */
//    interface DownloadFileSource {
//        /**
//         * 个人文件 0
//         */
//        int PRIVATE_FILE = 0;
//
//        /**
//         * 共享文件 2
//         */
//        int SHARE_FILES = 1;
//        /**
//         * 流转，接受文件 1
//         */
//        int FLOW = 2;
//
//        /**
//         * 外发文件 3
//         */
//        int OUT = 3;
//
//    }


    /**
     * FTP主备信息
     */
    interface FtpMainType {

        /**
         * 主FTP
         */
        Integer MAIN = 0;

        /**
         * 备FTP
         */
        Integer NOT_MAIN = 1;

    }

    /**
     * 状态类型
     */
    interface StateType {

        /**
         * 启用(正常)
         */
        int ENABLE = 0;

        /**
         * 禁用
         */
        int NOT_ENABLE = 1;

    }

    /**
     * 是否外接FTP
     */
    interface IsOutFtp {

        /**
         * 内部
         */
        int INNER = 0;

        /**
         * 外部
         */
        int OUTER = 1;
    }

    /**
     * 是否是共享FTP
     */
    interface IsShareFtp {

        /**
         * 不共享
         */
        int NOT_SHARE = 0;

        /**
         * 共享
         */
        int SHARE = 1;

    }

    interface UploadSetting {

        /**
         * 上传字段配置:字典类型code
         */
        String TYPE_CODE = "upload_setting";

        /**
         * 上传字段配置:系统名称
         */
        String SYSTEM_NAME = "system_name";

        /**
         * 上传字段配置:最大上传大小
         */
        String FILE_MAX_UPLOAD_SIZE = "file_max_upload_size";

        /**
         * 上传字段配置:支持的上传类型
         */
        String SUPPORT_UPLOAD_TYPE = "support_upload_type";

        /**
         * 上传字段配置:备注
         */
        String REMARK = "remark";

    }

    /**
     * 外接文件配置
     */
    interface OutsideFileSetting {

        /**
         * 上传文件夹名称
         */
        String UPLOAD = "outside_file_upload";

        /**
         * 下载文件夹名称
         */
        String DOWNLOAD = "outside_file_download";


    }

    interface RedisKeys {
        String JINKU_VERIFY_PREFIX = "jinku_verify_";
        String FILE_TOOL_PREFIX = "file_tool_";
        int JINKU_VERIFY_EXPIRS = 5 * 60;
    }

    /**
     * 三级权限（全局/组织/个人）
     * <p>
     * 描述：应用模块（文件存储空间/编辑权限）
     */
    interface ThreeLevelType {
        /**
         * 全局默认code
         */
        String GLOBAL_DEFAULT_CODE = "global";

        /**
         * 全局
         */
        int GLOBAL_LEVEL = 0;

        /**
         * 个人
         */
        int PERSIONAL_LEVEL = 1;

        /**
         * 组织
         */
        int ORG_LEVEL = 2;

        /**
         * 工作组
         */
        int GROUP_LEVEL = 3;
    }

    /**
     * 在线编辑(上传下载)
     */
    interface OnlineEditAction {

        /**
         * 上传
         */
        int TYPE_UPLOAD = 0;

        /**
         * 下载
         */
        int TYPE_DOWNLOAD = 1;

    }

    /**
     * 在线编辑类型
     */
    interface OnlineEditType {

        /**
         * FTP类型,直接传递FTP加密信息给在线编辑器,编辑器直接上传下载
         */
        String FTP = "0";

        /**
         * 普通方式,文件上传下载通过本系统
         */
        String COMMON = "1";

    }

    /**
     * 这个地址是拼好的，在线编辑的地址
     */
    interface OnlineEditUrl {
        String UPLOAD_URL = "/b/onlineedit/upload?code=";
        String DOWNLOAD_URL = "/b/onlineedit/download?code=";

        String UPLOAD_URL_OUTER = "/b/onlineedit/uploadForOuter?code=";
        String DOWNLOAD_URL_OUTER = "/b/onlineedit/downloadForOuter?code=";
    }

    /**
     * 上传下载地址对应字典表的code
     */
    interface OnlineEditCode {
        /**
         * 上传链接开头对应的字典code
         * <p>
         * http://192.168.5.96:8003/b/onlineedit/upload?code=
         */
        String UPLOAD_PATH_DICTCODE = "onlineeditupload";

        /**
         * 下载链接开头对应的字典code
         * <p>
         * http://192.168.5.96:8003/b/onlineedit/download?code=
         */
        String DOWNLOAD_PATH_DICTCODE = "onlineeditdownload";

        /**
         * 在线编辑类型code
         */
        String ONLINE_EDIT_TYPE_DICTCODE = "onlineedittype";
        /**
         * 客户端地址
         */
        String CLIENT_NAME_DICTCODE = "onlineeditclient";

        /**
         * 链接地址的开头信息
         */
        String LINK_PATH_HEADER = "BwdaOnlineEditCtrl://OnlineEdit/";

        /**
         * 上传下载临时路径
         */
        String UPDOWNLOAD_TEMP_PATH_DICTCODE = "onlineeditupdowntemppath";

        /**
         * 在线编辑支持的文件类型字典code，value逗号分隔
         */
        String SUPPORT_TYPE_DATACODE = "onlineeditsupportType";

        /**
         * 参数加密密钥
         */
        String SECURITY_KEY = "$A21uGs5N&3^v#K@";

        /**
         * 参数加密向量
         */
        String SECURITY_IV = "0102030405060708";

        /**
         * 加密方法名
         */
        String ENCODE_METHOD = "encryptSub";

        /**
         * 解密方法名
         */
        String DECODE_METHOD = "decryptSub";

        /**
         * 默认权限（只读）
         */

        String DEFAULT_RIGHT_STR = "00000";

        /**
         * 只读（允许复制）
         */
        String READ_ONLY_COPY = "01000";

        /**
         * 只读（禁止复制）
         */
        String READ_ONLY_NO_COPY = "00000";

        /**
         * 权限位数
         */
        int NUMBER_FOUR = 4;
        int NUMBER_FIVE = 5;

        /**
         * 路径切割符
         */
        String PATH_SPLIT_ONE = "/";

        /**
         * 路径切割符
         */
        String PATH_SPLIT_TWO = "\\";
    }

    /**
     * 在线编辑权限(0：禁止 1：允许)
     */
    interface OnlineEditRight {

        int NO = 0;

        int YES = 1;
    }

    /**
     * 逻辑关系类型
     */
    interface LogicalType {

        /**
         * 与
         */
        int AND = 0;

        /**
         * 或
         */
        int OR = 1;

    }

    /**
     * 文件扫描状态
     * <p>
     * 别人又定一个了，好乱
     * 0未扫描，1扫描中，2已扫描,3扫描失败,4无需扫描
     */
    interface ScanState {

        /**
         * 扫描中
         */
        int SCANNING = 1;
        /**
         * 已扫描
         */
        int SCANNED = 2;
        /**
         * 扫描失败
         */
        int ERROR = 3;
        /**
         * 无需扫描
         */
        int SCAN_SKIP = 4;

        int UPLOAD_ERROR = 11;

        String XIE_FU = "/";

        String FU_HAO = ".";

    }

    /**
     * ftp类型
     */
    interface FtpType {

        String FTP = "ftp";
        Integer ZERO = 0;

        String SFTP = "sftp";
        Integer ONE = 1;

    }

    /**
     * 人员组织
     */
    interface OrgUserTree {

        /**
         * 用户(叶子节点)的固定ID
         */
        String USER_NODE_ID = "-1";

    }


    /**
     * * @param optType：操作类型（0下载1流转2外发3共享4编辑）
     * 文件操作类型
     */
    interface FileOptType {
        /**
         * 下载
         */
        int DOWNLOAD = 0;

        /**
         * 流转
         */
        int FLOW = 1;
        /**
         * 外发
         */
        int OUT = 2;
        /**
         * 共享
         */
        int SHARE = 3;
        /**
         * 编辑
         */
        int EDIT = 4;


    }

    /**
     * 在线编辑权限描述
     */
    interface OnlineEditRightDescript {

        String READ_ONLY_RIGHT_STR = "只读";

        String EDIT_RIGHT_STR = "编辑";

        String NO_SAVE_AS_RIGHT_STR = "禁止另存为";

        String NO_COPY_RIGHT_STR = "禁止复制";

        String NO_PRINT_RIGHT_STR = "禁止打印";

        String DESCRIPT_STR_SPLIT = ",";

    }

    /**
     * 内置策略启用风险模式
     */
    interface RiskModel {
        /**
         * 用户模式 10
         */
        int USER = 10;
        /**
         * 文件模式 20
         */
        int FILE = 20;
        /**
         * 文件模式 30
         */
        int COMPOSE = 30;
    }

    /**
     * 内置策略启用风险模式
     */
    interface ModelSetting {
        /**
         * 用户等级
         */
        String USER_LEVEL = "RANK";

        /**
         * 文件等级
         */
        String FILE_LEVEL = "fileLevel";
    }

    /**
     * 水印类型
     */
    interface WatermarkType {

        /**
         * 明文水印
         */
        int DISPLAY = 1;

        /**
         * 屏幕水印
         */
        int SCREEN = 2;

        /**
         * 预览水印
         */
        int PREVIEW = 3;

        String MING = "明文水印";

    }

    /**
     * 水印内容配置
     * 0用户名1日期2MAC地址3地址
     */
    interface WaterContentKey {

        String USER_NAME = "0";

        String DATE = "1";

        String MAC_ADDR = "2";

        String IP_ADDR = "3";
    }

    /**
     * consumer日志相关
     */
    interface ConsumerLog {
        /**
         * 消费日志的字典code
         */
        String LOG_SOURCE_CODE = "log_source";

        /**
         * 数据库实现Bean名称
         */
        String DB_BEAN_NAME = "consumerLogServiceImpl";

        /**
         * es实现Bean名称
         */
        String ES_BEAN_NAME = "consumerLogEsServiceImpl";

        /**
         * es来源
         */
        String ES_SOURCE = "1";

    }

    /**
     * HTTPClient工具类相关
     */
    interface HttpClient {

        /**
         * UTF-8
         */
        String CHAR_SET_UTF8 = "UTF-8";

        /**
         * 响应码200
         */
        int RESPONSE_STATE_200 = 200;

        /**
         * 响应码501
         */
        String STATE_501 = "501";

    }

    /**
     * ES restful 查询参数（注意：请确保currenPageno*eachPageRows<10000）
     */
    interface EsRestfulSearchParam {

        /**
         * 查询参数
         */
        String SEARCH_PARAM = "searchStr";

        /**
         * 当前页
         */
        String CURRENT_PAGE_NO = "currenPageno";

        /**
         * 每页行数
         */
        String EACH_PAGE_ROWS = "eachPageRows";

        /**
         * es client 字典配置
         */
        String ES_CLINET_URL_DATACODE = "esClientUrl";

        /**
         * 日期转换格式
         */
        String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";

        /**
         * 索引字典
         */
        String LOG_INDEX_DATACODE = "logIndex";

        /**
         * ESClient请求相对路径
         */
        String ESCLIENT_PATH = "/EsClient";

        /**
         * 时间字段
         */
        String TIME_FIELD = "CREATE_TIME";

        /**
         * 文件名
         */
        String FILE_NAME_FILED = "filename";
        /**
         * 时间戳
         */
        String DATE_STAMP = "datestamp";

        /**
         * 时间戳
         */
        String ORDER_CHARATER = "order by datestamp desc";

        /**
         * and
         */
        String AND_CHARATER = "and";

        /**
         * limit
         */
        String LIMIT_CHARATER = "limit";

        /**
         * ,
         */
        String COMMA_CHARATER = ",";

    }

    /**
     * 下载服务标志
     */
    interface Download {
        /**
         * 直接下载 1
         */
        int DIRECT = 1;
        /**
         *
         */
        int DISPENSE = 2;

    }

    /**
     * 短信模板编号
     */
    interface MsgTemplateCode {
        /**
         * 发送外发密码
         */
        String SEND_OUT_PWD = "sendOutPwd";
        /**
         * 外发邮件code
         */
        String OUT_MAIL = "outMailTemplate";

    }

    /**
     * 外发发送标志， 0下载1邮件
     */
    interface OutSendType {
        /**
         * 直接下载0
         */
        int DOWNLOAD = 0;
        /**
         * 邮件
         */
        int EMAIL = 1;

    }


    /**
     * IP正则
     */
    interface IpRegex {

        /**
         * IPV6
         */
        String REG6 = "(?i)^((([\\da-f]{1,4}:){7}[\\da-f]{1,4})|(([\\da-f]{1,4}:){1,7}:)|(([\\da-f]{1,4}:){6}:[\\da-f]{1,4})|(([\\da-f]{1,4}:){5}(:[\\da-f]{1,4}){1,2})|(([\\da-f]{1,4}:){4}(:[\\da-f]{1,4}){1,3})|(([\\da-f]{1,4}:){3}(:[\\da-f]{1,4}){1,4})|(([\\da-f]{1,4}:){2}(:[\\da-f]{1,4}){1,5})|([\\da-f]{1,4}:(:[\\da-f]{1,4}){1,6})|(:(:[\\da-f]{1,4}){1,7})|(([\\da-f]{1,4}:){6}(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3})|(([\\da-f]{1,4}:){5}:(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3})|(([\\da-f]{1,4}:){4}(:[\\da-f]{1,4}){0,1}:(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3})|(([\\da-f]{1,4}:){3}(:[\\da-f]{1,4}){0,2}:(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3})|(([\\da-f]{1,4}:){2}(:[\\da-f]{1,4}){0,3}:(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3})|([\\da-f]{1,4}:(:[\\da-f]{1,4}){0,4}:(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3})|(:(:[\\da-f]{1,4}){0,5}:(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}))$";
        /**
         * IPV4
         */
        String REG4 = "^(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}$";

    }

    interface SpaceSetting {

        Integer ROOT_ORG_ID = 0;


    }

    interface BrowserType {

        String IE = "MSIE";

        String FIREFOX = "Firefox";

        String CHROME = "Chrome";

    }

    interface EncodeType {

        String GBK = "GBK";

        String UTF = "UTF-8";

    }

    interface FileServiceType {
        /**
         * 加解密：1 ，扫描ID：2 ，脱敏：3  ， PDF转换：4 ， 水印：5
         */
        String SAN = "2";

        String DESENS = "3";

        String WATERMARK = "5";

        String ENCRYPTION = "1";

        String PDF = "4";

    }

    /**
     * 字符串常量
     */
    interface Buffer {

        Long SIZE_ONE = 1048576L;

        Long SIZE_TWO = 10485760L;

        Long SIZE_THREE = 524288L;

        Long SIZE_FOUR = 262144L;

        Long SIZE_FIVE = 65536L;

        Long SIZE_SIX = 16384L;

    }

    interface ScanFileType {

        Integer FILE = 0;
        Integer DIR = 1;
        Integer ZIP = 2;

    }

}
